package com.ruoyi.system.mapper;

import java.util.List;

import com.ruoyi.common.core.domain.entity.SysUser;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 系统用户信息Mapper接口
 *
 * @author ruoyi
 * @date 2021-05-22
 */
@Mapper
public interface SysUserMapper
{
    /**
     * 查询系统用户信息
     *
     * @param uId 系统用户信息ID
     * @return 系统用户信息
     */
    public SysUser selectSysUserById(Long uId);

    /**
     * 查询系统用户信息列表
     *
     * @param zxSysuser 系统用户信息
     * @return 系统用户信息集合
     */
    public List<SysUser> selectSysUserList(SysUser zxSysuser);

    /**
     * 新增系统用户信息
     *
     * @param zxSysuser 系统用户信息
     * @return 结果
     */
    public int insertSysUser(SysUser zxSysuser);
    /**
     * 新增系统用户信息
     * @return 结果
     */
    public int insertRoleUser(@Param("uId") Long uId ,@Param("srId") Long srId);
    /**
     * 通过用户名查询用户
     *
     * @param LoginName 用户名  LoginPawd 密码
     * @return 用户对象信息
     */
    public SysUser selectSysUserByLoaginName(@Param("LoginName") String LoginName, @Param("LoginPawd")String LoginPawd);
    /**
     * 通过手机号码查询用户
     *
     * @param phoneNumber 手机号码
     * @return 用户对象信息
     */
    public SysUser selectUserByPhoneNumber(String phoneNumber);
    /**
     * 修改系统用户信息
     *
     * @param zxSysuser 系统用户信息
     * @return 结果
     */
    public int updateSysUser(SysUser zxSysuser);

    /**
     * 删除系统用户信息
     *
     * @param uId 系统用户信息ID
     * @return 结果
     */
    public int deleteSysUserById(Long uId);
    public int deleteRoleUserByIds(String[] uIds);
    /**
     * 批量删除系统用户信息
     *
     * @param uIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteSysUserByIds(String[] uIds);
    /**
     * 校验用户名称是否唯一
     *
     * @param loginName 登录名称
     * @return 结果
     */
    public int checkLoginNameUnique(String loginName);

    /**
     * 校验手机号码是否唯一
     *
     * @param uPhone 手机号码
     * @return 结果
     */
    public SysUser checkPhoneUnique(String uPhone);

}
